import * as types from "./mutaions-type";
import { type } from "os";
import session from "@/toolset/session-storage/session";

export default {
  state: {
    /*
    * 用户选择的菜单数据
    * 作者：gzt
    * 时间：2019-11-25 20:32:44
    */
    account_select_menu: [] || session.getItem('ACCOUNT_SELECT_MENUS'),
    /*
    * 是否是通过队长邀请进入的
    * 作者：gzt
    * 时间：2019-11-25 20:32:57
    */
    is_Invitation: false || session.getItem('IS_INVITATION'),
    /*
    * 组队的类型
    * 作者：gzt
    * 时间：2019-11-25 20:33:32
    */
    organize_type: '',
    /*
    * 订单id
    * 作者：gzt
    * 时间：2019-11-25 20:33:44
    */
    order_id: 0 || session.getItem('ORDER_ID'),
    /*
    * 分享达人id
    * 作者：gzt
    * 时间：2019-11-25 20:33:54
    */
    share_id: 0 || session.getItem('SHARE_ID'),

    /*
    * 商家id
    * 作者：gzt
    * 时间：2019-12-03 10:57:44
    */
    business_id:0||session.getItem('BUSINESS_ID'),

  },
  getters: {
    account_select_menu: state => state.account_select_menu,
    is_Invitation: state => state.is_Invitation,
    organize_type: state => state.organize_type,
    order_id: state => state.order_id,
    share_id: state => state.share_id,
    business_id:state=>state.business_id
  },
  mutations: {
    /*
    * 选择菜品，将选取的菜品添加进购物车
    * 作者：gzt
    * 时间：2019-11-24 12:59:13
    */

    [types.SELECT_MENU]: (state, menus) => {
      let index = state.account_select_menu.findIndex(ent => ent.id === menus.id)
      // 存在商品则进行替换
      if (index != -1) {

        if (menus.num == 0) {
          // 删除
          state.account_select_menu.splice(index, 1)
        } else {
          // 替换数据
          state.account_select_menu.splice(index, 1, menus)
        }
      } else {
        state.account_select_menu.push(menus)
      }
      session.setItem('ACCOUNT_SELECT_MENUS',state.account_select_menu)
    },

    /*
    * 是否为别人邀请加入的
    * 作者：gzt
    * 时间：2019-11-24 13:58:50
    */
    [types.IS_INVITATION]: (state, is_invitation) => {
      state.is_Invitation = is_invitation
      session.setItem("IS_INVITATION", is_invitation)
    },
    /*
    * 组队的类型，分为aa邀约或者做东组队
    * 作者：gzt
    * 时间：2019-11-24 14:17:06
    */

    [types.ORGANIZE_TYPE]: (state, type) => {
      state.organize_type = type
      
    },

    /*
    * 保存订单的id
    * 作者：gzt
    * 时间：2019-11-25 20:27:37
    */
    [types.ORDER_ID]: (state, order_id) => {
      state.order_id = order_id
      session.setItem("ORDER_ID", order_id)
    },

    /*
    * 分享达人的id保存
    * 作者：gzt
    * 时间：2019-11-25 20:29:15
    */
    [types.SHARE_ID]: (state, share_id) => {
      state.share_id = share_id
      session.setItem("SHARE_ID", share_id)
    },

    /*
    * 清除用户所选的菜单
    * 作者：gzt
    * 时间：2019-11-26 12:27:04
    */

    [types.CLEAR_ACCOUNT_MENUS]:(state)=>{
      state.account_select_menu=[]
    },

    /*
    * 商家的id
    * 作者：gzt
    * 时间：2019-12-03 10:59:07
    */
    [types.BUSINESS_ID]:(state,business_id)=>{
      state.business_id=business_id
      session.setItem('BUSINESS_ID',business_id)
    }

  },
  actions: {

  }
};
